package com.ys.io.作业;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.Arrays;
import java.util.Scanner;

/**
 * 描述: 文字读取更改字符
 *
 * @author CodeYang
 * @version 2020/12/31 9:14
 */
public class 文字读取更改字符 {
    public static void main(String[] args) {
        try (
                InputStream in =    new FileInputStream("day_23/字符.txt");


        ){
            Scanner input = new Scanner(System.in);
            byte[] data = new byte[26];
            int len = in.read(data);
            System.out.println(Arrays.toString(data));
            System.out.println("输入要替换字符的索引");
            int index = input.nextInt();
            System.out.println("输入替换之后的字符");
            char chars = input.next().charAt(0);
            data[index]= (byte) chars;
                // 这里写入必须放在后面,要不会把文件内容给覆盖为空,因为 FileOutputStream 在try() 中会优先执行
            // 这里是一个只关闭资源,不处理异常的try块
            try(
                    FileOutputStream fos = new FileOutputStream("day_23/字符.txt");
            ){
                fos.write(data);
            }


        }catch (Exception e){
                e.printStackTrace();
        }



    }
}
